Haskell環境構築2020簡易版 (macOS, Linux向け)
一から検証してないけど多分これでいける
1. 公式を参考にstackを入れる(ghcup/cabalでもいいが下記はstack前提とする) 2. $HOME/.local/bin をPathに追加(もとからしてあれば飛ばす)
3. 公式 を参考に新しいプロジェクトを作り,コンパイラをインストールする 4. Visual Studio Codeを入れる
5. Visual Studio CodeでHaskell 拡張を入れる 6. 先程作ったプロジェクトをVisual Studio Codeで開くと対応するhaskell language serverのバイナリを自動でダウンロードしてIDE周りを設定してくれる.
7. hls用のstack.yamlを作成して以下を追加(ドキュメント生成とfastビルドのため)
code: stack-hls.yaml
ghc-options:
"$everything": -haddock -O0 -Wall
ドキュメント生成してないとホバーでのドキュメント表示がされない
9. プロジェクトルートでgen-hie > hie.yamlを実行しhie.yamlを生成
10. hie.yamlの cradle.stack.stackYamlに stack-hls.yaml を指定
haskell ide engine(hie)やghcideはhaskell language serverに統合されてオワコンになったのでこれを使っていこうな.
Windowsも同じ方法で動くような気がするが,8.8のバイナリなかったりするのでわからん.
hie.yamlのstack.yamlの指定に対応するようになったのでhlsの裏で回ってるビルドをO0にできるようになり,いつまで経ってもhlsが機能しないみたいなことがほとんどなくなった.
hls0.5のtactic pluginはメチャ便利でtyped holeに当てはまる実装をバリバリサジェストしてくれるので開発体験が最高.みんなもバリバリHaskellかいていこうな
追記
参考